package com.sojson.project.sys.user.entity.bo;

import com.sojson.base.impl.BaseUtilDto;
import com.sojson.util.DateUtil;
import com.sojson.util.token.Token;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 在线用户Bean
 * 
 * @author liu
 * @date 2021-07-26
 */
@Data
@ApiModel("在线用户")
public class UserOnline extends BaseUtilDto {

    /***/
    private static final long serialVersionUID = 1L;

    /** 在缓存中的Key */
    @ApiModelProperty("在缓存中的Key")
    private String chacheKey;
    /** 用户ID */
    @ApiModelProperty("用户ID")
    private String userId;
    /** TokenId */
    @ApiModelProperty("TokenId")
    private String tokenId;
    /** 登录时间 */
    @ApiModelProperty("登录时间")
    private Long loginTime;

    /**
     * 创建初始化
     */
    public void init(Token token) {
        setUserId(token.getUser().getId());
        setTokenId(token.getId());
        setLoginTime(DateUtil.nowLong());
    }

}